#ifndef SERVIDOR_H
#define SERVIDOR_H

#include <QObject>
#include <QTcpServer>
#include <QList>
#include <QTcpSocket>

#include "fileitem.h"

class Servidor : public QObject
{

Q_OBJECT

public:

    Servidor(QObject *parent = 0);

public slots:

    void novaConexao();
    void erro(QAbstractSocket::SocketError error);
    void dadosRecebidos();
    void adicionarNovoArquivo(int i);

private:

    QTcpServer* servidor;
    QList<QTcpSocket*> conexoes;
    QVector<QByteArray> dados_peers;
    QVector<FileItem*> arquivos_disponiveis;
    void processarLista(int posicao_lista);
    QByteArray* gerarListaServidor ();

};

#endif // SERVIDOR_H
